Universal business language (ubl) is developed by the organization for the advancement of structured information standards (oasis) for building up common extensible markup language (xml) business document schema. The common xml business document schema conforms to the widely accepted industry criteria. Different participants agree on a common vocabulary, as a result of which the schema provides inter-operability in the electronic business domain.
A typical ubl process diagram offers a library of reusable components and a set of electronic xml business documents schema. Examples of the reusable components include address, price, item, and the like, while the electronic xml business documents schema include order, order cancelation, dispatch advice, remittance advice, invoice, and the like. The xml business documents schema together with process descriptions support the typical business processes for covering a supply chain from sourcing to payment. Further, unified modeling language (uml) is employed for creating visual models of the ubl process diagram. Various examples of the uml diagrams include class diagrams, sequence diagrams, and activity diagrams.
Since the UBL process diagram (represented using a UML diagram, such as a UML class diagram) is a visual model, it becomes difficult to extract meaningful information from it. To overcome this limitation, some existing technologies have added a knowledge dimension to UML class diagrams by converting them into Web Ontology Language (OWL) using a Model Driven Development-based approach. OWL is primarily a knowledge-based representation of entities. It describes the problem domain and semantic relations of entities.
For converting a UML class diagram to OWL, the technologies follow a two-step generic technique. In the first step, the ontology is manually extracted from the UML class diagram. This ontology is hand-coded and is, therefore, subject to a knowledge designer's perception of the UML class diagram. In the second step, instance modeling is performed where each process of the UML class diagram is converted to ontology instances.
A major limitation of the steps described above is that the manual extraction of the ontology becomes a tedious task for large UBL process diagrams (or UML class diagrams), such as Create Catalogue process and Update Catalogue pricing process. Further, the manual extraction faces problems, owing to the subjectivity involved.
In light of the above mentioned limitations, some current technologies have automated the step of extracting the ontology from a uml class diagram by utilizing owl for service (owl-s). In such a scenario, first a uml profile is created for the uml class diagram. Thereafter, the uml profile is converted to owl-s. An example of such a technique is described in “ontology modeling and mda” authored by dragan djurić, dragan ga{hacek over (s)}ević, vladan deved{hacek over (z)}ić, and is published by eth zurich. The authors propose a technique of automatically generating owl from a uml model by utilizing ontology uml profile (oup) definition.
However, in such techniques, an intermediary conversion to uml profiles is involved before the uml class diagram is completely converted into owl. This requires additional processing, and thus adds to the computational load. Further, the service model offered by owl-s is inherently complex.
Another limitation is that the current technologies only utilize the uml class diagram model for conversion to owl. For instance, a work has been described in “visual modeling of owl dl ontologies using uml” authored by sara brockmans, raphael volz, andreas eberhart, and peter loffler, and has been published in iswc, lncs, 2004. The authors propose a meta object facility (mof) compliant metamodel for creating owl ontology from a uml class diagram. However, there is no mechanism provided by these technologies for creating owl ontology from a uml activity diagram.
In light of the above discussion, there is a need for directly converting ubl process diagrams into owl, without creating uml profiles. Further, there is also a need for utilizing a uml activity diagram representation of ubl for conversion to owl.